Communication devices, methods and computer readable storage media for determining a communication condition and communicating with other communication devices

ABSTRACT

A communication device including a controller that controls the communication device to execute steps of: establishing a first communication session between the communication device and a first communication device; determining whether a second communication session between the first communication device and a second communication device is established; acquiring a communication parameter of the second communication session from the first communication device when the controller determines that the second communication session between the first communication device and the second communication device is established; and determining a bandwidth of the first communication session based on the acquired communication parameter of the second communication session.

CROSS-REFERENCE TO RELATED APPLICATION

This application claims priority from Japanese Patent Application No.2011-041317 filed on Feb. 28, 2011, which is incorporated herein byreference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates generally to communication devices,communication methods, and computer readable storage medium thatexecutes instructions to determine a communication condition and tocommunicate with other communication device via a network based on ameasured network status.

2. Description of Related Art

A known communication device has a function for measuring a status of anetwork. The known communication device transmits a plurality ofmeasurement packets to another communication device. A period of timefrom the transmission of the measurement packet to reception of anacknowledgement (ACK) packet is measured as a round trip time. Based onthe measured round trip time, an optimum transmission bandwidth isdetermined. The known communication device communicates via the networkby transmitting the data packets using the determined transmission band.

SUMMARY OF THE INVENTION

When communication of data packets is implemented among a plurality ofcommunication devices, a known communication device of the plurality ofcommunication device starts to communicate with a new communicationdevice. The known communication device transmits a plurality ofmeasurement packets to the new communication devices in order to measurethe status of the network between the known communication device and thenew communication device. Nevertheless, the transmitted measurementpackets occupy a certain portion of the bandwidth of the network.Accordingly, the communication of the measurement packets may interferewith other communication of data packets implemented among the pluralityof communication device.

A need has arisen for communication device, communication methods, andcomputer readable storage media containing computer-readableinstructions for measuring a status of a network while avoidinginterference with the communication of other data packets beingimplemented among the plurality of communication devices.

According to an embodiment of the present invention, a communicationdevice comprising: a controller configured to control the communicationdevice to execute steps of: establishing a first communication sessionbetween the communication device and a first communication device;determining whether a second communication session between the firstcommunication device and a second communication device is established;acquiring a communication parameter of the second communication sessionfrom the first communication device when the controller determines thatthe second communication session between the first communication deviceand the second communication device is established; and determining abandwidth of the first communication session based on the acquiredcommunication parameter of the second communication session.

According to another embodiment of the present invention, a method forimplementing communication at a communication device, the methodcomprising steps of: establishing a first communication session betweenthe communication device and a first communication device; determiningwhether a second communication session between the first communicationdevice and a second communication device is established; acquiring acommunication parameter of the second communication session from thefirst communication device when the second communication session betweenthe first communication device and the second communication device isestablished; and determining a bandwidth of the first communicationsession based on the acquired communication parameter of the secondcommunication session.

According to still another embodiment of the present invention, anon-transitory computer readable storage medium storing computerreadable instructions that, when executed, cause a communication deviceto execute steps of: establishing a first communication session betweenthe communication device and a first communication device; determiningwhether a second communication session between the first communicationdevice and a second communication device is established; acquiring acommunication parameter of the second communication session from thefirst communication device when the second communication session betweenthe first communication device and the second communication device isestablished; and determining a bandwidth of the first communicationsession based on the acquired communication parameter of the secondcommunication session.

Other objects, features, and advantages of an embodiment of theinvention will be apparent to persons of ordinary skill in the art fromthe following description of an embodiment with reference to theaccompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

For a more complete understanding of the present invention, needssatisfied thereby, and the objects features, and advantages thereof,reference now is made to the following descriptions taken in connectionwith the accompanying drawings.

FIG. 1 is a block diagram depicting a communication system and anelectrical configuration of a communication device according to anembodiment of the invention.

FIG. 2 is a diagram for explaining a measurement method of an availablebandwidth according to an embodiment of the invention.

FIG. 3 is a diagram for explaining a determination method of atransmission band according to an embodiment of the invention.

FIG. 4 is another diagram for explaining the determination method of thetransmission band according to an embodiment of the invention.

FIG. 5 is still another diagram for explaining the determination methodof the transmission band according to an embodiment of the invention.

FIG. 6 is yet another diagram for explaining the determination method ofthe transmission band according to an embodiment of the invention.

FIG. 7 is a flowchart depicting a main procedure according to anembodiment of the invention.

FIG. 8 is a flowchart depicting a condition determination procedureaccording to an embodiment of the invention.

FIG. 9 is a flowchart depicting a starting bandwidth determinationprocedure according to an embodiment of the invention.

FIG. 10 is a flowchart depicting a bandwidth request procedure accordingto an embodiment of the invention.

FIG. 11 is a flowchart depicting a condition modification procedureaccording to an embodiment of the invention.

DETAILED DESCRIPTION OF EMBODIMENTS OF THE INVENTION

Embodiments of the invention now are described in detail with referenceto the accompanying drawings, like reference numerals being used forlike corresponding parts in the various drawings.

Referring to FIG. 1, a communication system 1 may comprise a pluralityof communication terminals 10. The plurality of communication terminals10 may comprise communication terminals 11, 12, and 13. The plurality ofcommunication terminals 10 may perform the peer-to-peer (P2P) typecommunication with each other over a network 2 to hold avideoconference. Each of the plurality of communication terminals 10 maybe a personal computer (PC) or a terminal configured forvideoconference. Reference numerals, e.g., 11, 12, and 13, labeling eachof the plurality of communication terminals 10 may also represent theIDs of the respective communication terminals 10. The communicationdevice 13 may comprise a CPU 20 that controls the communication device13. The CPU 20 may be electrically connected to a ROM21, a RAM 22, ahard disk drive (HDD) 23, an input unit 24, a display 25, a camera 26, aspeaker 27, a microphone 28, a communication I/F 29, and a driver unit30. The ROM 21 stores a boot program, a basic input/output system(BIOS), an operation system (OS), and so forth. The RAM 22 may storetemporary data such as a timer value or a counter value. The HDD 23 maystore therein a communication program of the CPU 20. The input unit 24may be a keyboard, a mouse, a combination thereof, or other similardevices, by which a user may input instructions. The communication I/F29 may control a timing at which the communication device 10communicates with another communication device 10 via the network 2. Thedriver unit 30 may be configured to read information stored in a storagemedium 301.

The storage medium 301 may be a storage medium, such as a digitalversatile disc (DVD). For example, when each of the communication device10 is set up, a communication program stored in the storage medium 301may be read by the driver unit 30 and may be stored in the HDD 23. Thecommunication program may be downloaded from a predetermined serverthrough the network 2 for storage in the HDD 23. The communicationdevice 10 may determine an available amount of the communication data inthe network 2. The available amount of the communication data mayrepresent a communication capacity in the network 2 available for datacommunication.

The communication device 10 may control the transmission speed of thepacket within the determined available amount of communication data,such that the available amount of communication data may be efficientlyutilize. The available amount of communication data may be referred toas bandwidth. The available amount of communication data may be referredto as available bandwidth. The transmission speed of the packet may bereferred to as transmission bandwidth, and the reception speed of thepacket may be referred to as reception bandwidth.

Referring to FIG. 2, the communication device 10 may implement ameasurement method of the available bandwidth. The communication device10 may transmit a plurality of measurement packets to othercommunication device via the network 2. The other communication devicemay receive the plurality of measurement packets transmitted from thecommunication device 10. The communication device 10 that transmits themeasurement packet may be referred to as transmitting device. Thecommunication device 10 that receives the measurement packet may bereferred to as receiving device. The measurement packet may be a datapacket transmitted for the purpose of measuring the status of thenetwork. The status of the network may be represented, for example, byan available bandwidth of the network. The horizontal axis in FIG. 2 mayrepresent an absolute value of the bandwidth. The left end of thehorizontal axis in FIG. 2 may correspond to the bandwidth of “0.” Theless the value of the horizontal axis in FIG. 2 is, the narrower thebandwidth may be.

On the contrary, the greater that the value measured on the horizontalaxis in FIG. 2 is, the broader the bandwidth may be. In FIG. 2, theportion where the bandwidth is narrow may be represented by a “narrowband,” and the portion where the bandwidth is broad may be representedby a “broad band.” The available bandwidth, e.g., bit per second (bps),of the communication device 10 may be represented by an availablebandwidth 31. When the transmission bandwidth (bps) at which thetransmitting device transmits the measurement packet is equal to ornarrower than the available bandwidth 31, the transmission bandwidth maybe located in a region 32 in FIG. 2. When the transmission bandwidth isin the region 32, a variation of a ratio between the number ofmeasurement packets that the receiving device is unable to receive andthe number of measurement packets transmitted by the transmitting devicemay be reduced. When the transmission bandwidth is in the region 32,variation of the measurement packet between the transmission bandwidthand the reception bandwidth may be a reduced. The ratio between thenumber of measurement packets that the receiving device is unable toreceive and the number of measurement packets transmitted by thetransmitting device may be referred to as packet loss. The variation ofthe measurement packet between the transmission bandwidth and thereception bandwidth may be referred to as jitter. When the transmissionbandwidth at which the transmitting device transmits the measurementpacket is broader than the available bandwidth, the transmissionbandwidth may be located in a region 33 in FIG. 2. When the transmissionbandwidth is located in the region 33, the packet loss and the jittermay increase.

The transmitting device may control the transmission interval of themeasurement packet within a predetermined range of the bandwidth. Morespecifically, the transmitting device may gradually vary thetransmission interval from the broader side to the narrower side, withinthe predetermined range. The broader side may correspond to a reducedtransmission interval. The narrower side may correspond to a increasedtransmission interval. The predetermined bandwidth range may be referredto as predetermined range 37, as shown in FIG. 2. The transmittingdevice may vary the transmission bandwidth from a bandwidth bmax whichmay be the upper limit of the predetermined range 37 to a bandwidth bminwhich may be the lower limit thereof. The predetermined range 37 may bedetermined in advance, such that the predetermined range 37 may cover abandwidth that includes the available bandwidth. When the transmissionbandwidth of the measurement packet is broader than the availablebandwidth, e.g., region 33, the packet loss and the jitter may increase.When the transmission bandwidth of the measurement packet becomesnarrower than the available bandwidth, e.g., region 32, the packet lossand the jitter may decrease.

The receiving device may measure the packet loss and the jitter whenreceiving the measurement packet transmitted from the transmittingdevice. When the measured packet loss and jitter are less than apredetermined threshold, the receiving device may determine that thereception bandwidth of the measurement packet as the available bandwidthin a communication line directed from the transmitting device to thereceiving device. The above-mentioned communication executed for thepurpose of measuring the available bandwidth may be referred to asmeasurement communication. The available bandwidth determined by thereceiving device may be notified to the transmitting device. Thetransmitting device then may control or adjust the transmissionbandwidth within a range of the notified available bandwidth. Thetransmitting device then may transmit a data packet to the receivingdevice. Thus, communication in a network environment in which the packetloss and the jitter are reduced may be performed. The transmittingdevice may stably perform the communication with the receiving device tocarry out the video conference.

The measured packet loss and jitter may be less than the predeterminedthreshold when the receiving device receives a measurement packettransmitted at the transmission bandwidth of bmax. In this case, theavailable bandwidth may be located on the broader side from thepredetermined range 37. The receiving device may utilize a bandwidth onthe broader side from the predetermined range 37 for communication withthe transmitting device and may request the transmitting device totransmit the measurement packets. The transmitting device may transmitthe measurement packets while gradually varying the transmissionbandwidth toward the broader side from bmax. Thus, the receiving devicemay determine the available bandwidth, even though the availablebandwidth is broader than the predetermined range 37.

In another embodiment, the communication device 13 may transmit themeasurement packets while gradually varying the transmission bandwidthfrom the lower limit bmin of the predetermined range 37 to the upperlimit thereof. In still another embodiment, the communication device 13may randomly select the transmission bandwidth from within thepredetermined range 37 for transmitting the measurement packets.

A communication may be executed between the communication devices 11 and12 as indicated by arrows 14, 15 in FIG. 1. The communication device 13may request to start communication to the communication device 12, e.g.,arrow 16. In order to determine the transmission bandwidth fortransmitting a data packet to the communication device 12, thecommunication device 13 may measure the available bandwidth in thecommunication line directed from the communication device 13 to thecommunication device 12. Nevertheless, a part of the bandwidth in thecommunication line directed from the communication device 13 to thecommunication device 12, e.g., communication line 17, has already beenoccupied with the communication directed from the communication device11 to the communication device 12, e.g., arrow 15. The communicationline directed from the communication device 11 to the communicationdevice 12 and the communication line directed from the communicationdevice 13 to the communication device 12 may overlap in thecommunication line 17. Consequently, when the measurement packets aretransmitted from the communication device 13 to the communication device12, an occupation rate of the bandwidth of the communication line 17 mayincrease. The increase in occupation rate of the bandwidth in thecommunication line 17 may adversely affect the communication between thecommunication devices 11 and 12. Further, the accuracy of themeasurement of the available bandwidth in the communication linedirected from the communication device 13 to the communication device 12may degrade.

In order to prevent the above-mentioned adverse effect, when acommunication between the devices 11 and 12 is executed and thecommunication device 13 starts to communicate with the communicationdevice 12, the communication device 13 may determine the transmissionbandwidth of the measurement packet to be transmitted first.

Referring to FIGS. 3-6, a method of determining the transmissionbandwidth of the measurement packet to be transmitted first isdescribed. An available bandwidth U shown in FIG. 3 may represent theavailable bandwidth in the communication line directed from thecommunication device 11 to the communication device 12. An occupiedbandwidth P shown in FIG. 3 may represent the bandwidth occupied for thecommunication from the communication device 11 to the communicationdevice 12. In FIG. 3, the occupied bandwidth P in the availablebandwidth U may be occupied for the communication from the communicationdevice 11 to the communication device 12. The bandwidth occupied for thecommunication from the communication device 11 to the communicationdevice 12 may be referred to as occupied bandwidth. The occupiedbandwidth P may coincide with the transmission bandwidth of the datapacket being transmitted from the communication device 11 to thecommunication device 12.

The communication device 13 may determine the transmission bandwidth ofthe measurement packet as follows. First, the communication device 13may acquire the available bandwidth U from the communication device 12.The communication device 13 also may acquire, from the communicationdevice 12, the transmission bandwidth of the data packet beingtransmitted from the communication device 11 to the communication device12. The acquired transmission bandwidth may correspond to the occupiedbandwidth P. The communication device 13 then may subtract the occupiedbandwidth P from the available bandwidth U to obtain a bandwidth V. Thebandwidth V may represent the unused portion of the available bandwidthU. Hereinafter, the bandwidth obtained by subtracting the occupiedbandwidth from the available bandwidth may be referred to as surplusbandwidth. While the transmission bandwidth, at which the communicationdevice 13 transmits the measurement packets, does not exceed the surplusbandwidth V, the communication from the communication device 11 to thecommunication device 12 may not be adversely affected by the measurementcommunication.

The communication device 13 may compare the upper limit bmax and lowerlimit bmin of the predetermined range 37 to be used as the transmissionbandwidth for the measurement communication, with the surplus bandwidthV. Through such comparison, the communication device 13 may decidewhether it is possible to utilize the predetermined range 37 todetermine the transmission bandwidth and to perform the measurementcommunication. As shown in FIG. 3, the surplus bandwidth V is greaterthan bmax. Accordingly, while the transmission bandwidth is set withinthe predetermined range 37, the transmission bandwidth may be less thanthe surplus bandwidth V. Even if any bandwidth within the predeterminedrange 37 is used as the transmission bandwidth of the measurementpackets, it may not adversely affect the communication from thecommunication device 11 to the communication device 12. Thus, thecommunication device 13 may decide that it is possible to utilize thepredetermined range 37 to determine the transmission bandwidth, and toperform the measurement communication. The communication device 13 mayselect bmax as the transmission bandwidth of the measurement packet tobe transmitted first. Hereinafter, the transmission bandwidth of themeasurement packet to be transmitted first may be referred to asstarting bandwidth.

The communication device 13 may vary the transmission bandwidth in therange from bmax to bmin for transmission of the measurement packets tothe communication device 12. The communication device 12 may receive themeasurement packets and measure the packet loss and the jitter todetermine the available bandwidth in the predetermined range 37. Thecommunication device 12 then may notify the determined availablebandwidth to the communication device 13. The communication device 13may adjust the transmission bandwidth for communication with thecommunication device 12 within a range that does not exceed theavailable bandwidth that has been notified.

Although the communication device 12 may receive the measurement packetat the transmission bandwidth of bmax, the communication device 12 maydecide that the available bandwidth is located on the broader side fromthe bmax. Although the surplus bandwidth V may represent the unusedportion of the available bandwidth U in the foregoing calculation, theunused portion of the available bandwidth in the transmission line 17shown in FIG. 1 may be taken as the surplus bandwidth V. In this case,the surplus bandwidth V may correspond to a portion, e.g., transmissionline 18 in FIG. 1, that does not overlap with the communication linefrom the communication device 13 to the communication device 12, e.g.,transmission line 17 in FIG. 1, in the communication line from thedevice 11 to the communication device 12. Thus, the surplus bandwidth Vmay correspond to the unused portion of the overlapping portion of thecommunication line. Accordingly, when the communication line from thecommunication device 13 to the communication device 12, e.g.,transmission lines 17 and 19 in FIG. 1, has sufficient bandwidth, theavailable bandwidth may exceed the surplus bandwidth V. In such a case,the communication device 12 may decide that the available bandwidth islocated on the broader side from the bmax.

When deciding that the available bandwidth is located on the broaderside from bmax, the communication device 12 may request thecommunication device 13 to transmit the measurement packets using thebandwidth on the broader side from bmax. The communication device 13then may select the transmission bandwidth from the range broader thanbmax, in response to request from the communication device 12, and maytransmit the measurement packets. Thus, the communication device 12 maydetermine the available bandwidth located on the broader side from bmax.

As described above, the communication device 13 may set bmax as thestarting bandwidth in the case where bmax is less than the surplusbandwidth V. When bmax is utilized as the transmission bandwidth, theunused portion of the bandwidth of the transmission line may beutilized. Accordingly, the communication currently being performedbetween the communication devices 11 and 12 may not be adverselyaffected by the measurement communication. Further, because thecommunication device 13 utilizes the unused portion of the bandwidth ofthe communication line for the measurement communication, the availablebandwidth of the communication line for communication with thecommunication device 12 may be accurately measured. In addition, theavailable bandwidth may be located in the predetermined range 37.Therefore, the communication device 13 may quickly measure the availablebandwidth by transmitting the measurement packets utilizing thepredetermined range 37.

A greater amount of data packets than the ones shown in FIG. 3 may betransmitted from the communication device 11 to the communication device12. As shown in FIG. 4, the communication from the communication device11 to the communication device 12 may utilize an occupied bandwidth Qwithin the available bandwidth U. The occupied bandwidth Q may begreater than the occupied bandwidth P in FIG. 3. The communicationdevice 13 may acquire the available bandwidth U from the communicationdevice 12. The communication device 13 also may acquire from thecommunication device 12 the transmission bandwidth of the data packetsbeing transmitted from the communication device 11 to the communicationdevice 12, as the occupied bandwidth Q. The communication device 13 thenmay subtract the occupied bandwidth Q from the available bandwidth U toobtain a surplus bandwidth X.

The communication device 13 may compare the upper limit bmax and lowerlimit bmin of the predetermined range 37 with the surplus bandwidth X.As shown in FIG. 4, the surplus bandwidth X may be smaller than bmax andgreater than bmin. Accordingly, a bandwidth in the predetermined range37 on the broader side from the surplus bandwidth X may be utilized asthe transmission bandwidth of the measurement packet. In this case,however, the communication from the communication device 11 to thecommunication device 12 may be affected by the measurementcommunication. Thus, the bandwidth in the transmission line utilized forthe communication from the communication device 11 to the communicationdevice 12 may exceed the available bandwidth U by transmitting of themeasurement packets.

Accordingly, the communication device 13 may select the surplusbandwidth X as the starting bandwidth to prioritize usage of thebandwidth in the predetermined range 37 less than the surplus bandwidthX with priority. The communication device 13 may vary the transmissionbandwidth in the range from the surplus bandwidth X to bmin fortransmission of the measurement packets to the communication device 12.The communication device 12 may receive the measurement packets anddetermine the available bandwidth. The communication device 12 then maynotify the determined available bandwidth to the communication device13. The communication device 13 then may adjust the transmissionbandwidth for communication with the communication device 12, such thatthe transmission bandwidth is within a range that does not exceed theavailable bandwidth that has been notified.

The communication device 13 may set the surplus bandwidth X as thestarting bandwidth when the surplus bandwidth X is less than bmax andgreater than bmin. In this case, the bandwidth less than the surplusbandwidth X may be utilized with priority as the transmission bandwidth.When the bandwidth less than the surplus bandwidth X is utilized as thetransmission bandwidth, the unused portion of the bandwidth of thetransmission line may be utilized. Accordingly, the communicationcurrently performed between the communication devicees 11 and 12 may notbe adversely affected by the measurement communication. Further, becausethe communication device 13 utilizes the unused portion of the bandwidthof the communication line for the measurement communication, theavailable bandwidth of the transmission line for communication with thecommunication device 12 may be more accurately measured. In addition,the communication device 13 may quickly measure the available bandwidth,because the transmission bandwidth is selected from a range narrowerthan the predetermined range 37.

A greater amount of data packets than the one shown in FIG. 4 may betransmitted from the communication device 11 to the communication device12. As shown in FIG. 5, the communication from the communication device11 to the communication device 12 may utilize an occupied bandwidth Rwithin the available bandwidth U. The occupied bandwidth R may begreater than the occupied bandwidth Q in FIG. 4. The communicationdevice 13 may acquire the available bandwidth U from the communicationdevice 12. The communication device 13 also may acquire, from thecommunication device 12, the transmission bandwidth of the data packetstransmitted from the communication device 11 to the communication device12, as the occupied bandwidth R. The communication device 13 then maysubtract the occupied bandwidth R from the available bandwidth U toobtain a surplus bandwidth Y.

The communication device 13 may compare the upper limit bmax and lowerlimit bmin of the predetermined range 37 with the surplus bandwidth Y.As shown in FIG. 5, the surplus bandwidth Y may be less than bmin.Accordingly, when a bandwidth in the predetermined range 37 is utilizedas the transmission bandwidth of the measurement packets, thecommunication from the communication device 11 to the communicationdevice 12 may be adversely affected by the measurement communication.Thus, the bandwidth in the transmission line utilized for thecommunication from the communication device 11 to the communicationdevice 12 may exceed the available bandwidth U by transmitting thetransmission of the measurement packets. Further, because the surplusbandwidth Y is reduced, the bandwidth available for transmitting themeasurement packet may be limited, which may lead to failure indetecting the available bandwidth.

Accordingly, the communication device 13 may request the communicationdevice 11 to suppress the use of the transmission bandwidth fortransmission of the data packets from the communication device 11 to thecommunication device 12. In accordance with such a request from thecommunication device 13, the communication device 11 may suppress theuse of the transmission bandwidth for transmission of the data packetsto the communication device 12.

Because of such operation of the communication device 11, the bandwidthoccupied for the communication from the communication device 11 to thecommunication device 12 may decrease from the bandwidth R to a bandwidthS, as shown in FIG. 6. The communication device 13 again may acquirefrom the communication device 12 the transmission bandwidth of the datapackets being transmitted from the communication device 11 to thecommunication device 12. The acquired transmission bandwidth maycorrespond to the occupied bandwidth S. The communication device 13 maysubtract the occupied bandwidth S from the available bandwidth U toobtain a surplus bandwidth Z. The surplus bandwidth Z may be greaterthan the surplus bandwidth Y.

The communication device 13 may compare the upper limit bmax and lowerlimit bmin of the predetermined range 37 with the surplus bandwidth Z.As shown in FIG. 6, the surplus bandwidth Z may be less than bmax andgreater than bmin. Accordingly, the communication device 13 may selectthe surplus bandwidth Z as the starting bandwidth, such that thebandwidth in the predetermined range 37 less than the surplus bandwidthZ may be used with priority, as shown FIG. 4. The communication device13 may vary the transmission bandwidth in the range from the surplusbandwidth Z to bmin, for transmission of the measurement packets to thecommunication device 12. The communication device 12 may receive themeasurement packets and determine the available bandwidth. Thecommunication device 12 then may notify the determined availablebandwidth to the communication device 13. The communication device 13then may adjust the transmission bandwidth for communication with thecommunication device 12, such that the transmission bandwidth is withina range that does not exceed the available bandwidth that has beennotified.

When the surplus bandwidth Z is greater than bmax after comparing theupper limit bmax and lower limit bmin of the predetermined range 37 withthe surplus bandwidth Z, the communication device 13 may decide that itis possible to utilize the predetermined range 37 to determine thetransmission bandwidth and to perform the measurement communication. Thecommunication device 13 then may select bmax as the starting bandwidth,as shown in FIG. 3, and may vary the transmission bandwidth in the rangebetween bmax and bmin for transmission of the measurement packets to thecommunication device 12.

As described above, the communication device 13 may cause thecommunication device 11 to suppress the use of the transmissionbandwidth for transmission of the data packets from the communicationdevice 11 to the communication device 12, when the surplus bandwidth Yis less than bmin. Accordingly, the surplus bandwidth Z may becomeexceed the surplus bandwidth Y. Therefore the communication device 13may vary the transmission bandwidth in a wider range for transmission ofthe measurement packets. Such an operation ensures that the availablebandwidth may be determined successfully. Further, because bandwidthless than the surplus bandwidth Z is utilized as the transmissionbandwidth, the communication currently performed between thecommunication devices 11 and 12 may not be adversely affected by themeasurement communication. In addition, because the communication device13 utilizes the unused portion of the bandwidth of the transmission linefor the measurement communication, the available bandwidth of thecommunication line for communication with the communication device 12may be accurately measured.

FIGS. 7-11 depict a main procedure that may be performed by the CPU 20of the communication device 10. The main procedure may be activated andexecuted by the CPU 20 when a user inputs an instruction to initiate asession with another communication device 10. The main procedure may beexecuted by the CPU 20 of the communication device 13 in thecommunication system 1, as shown in FIG. 1. In FIG. 1, a session betweenthe communication device 11 and the communication device 12 may alreadybe established and communication may be performed between thecommunication devices 11 and 12, as depicted by an arrow 15 in FIG. 1.The communication device 13 may attempt to establish a session with thecommunication device 12 so as to initiate communication therewith, asdepicted by arrow 16 in FIG. 1.

The user of the communication device 13 may input the instruction toinitiate a session with the communication device 12 through the inputunit 24. This operation may activate the main procedure. As shown inFIG. 7, an establishment request packet may be transmitted to thecommunication device 12 at step S11. The establishment request packetmay be a packet for requesting initiation of a session. Thecommunication device 12 may receive the establishment request packet.The user of the communication device 12 may decide whether to approvethe initiation of a session with the communication device 13 and mayinput the decision through the input unit 24. When the approval forinitiation of a session with the communication device 11 is inputted,the communication device 12 may transmit an establishment responsepacket to the communication device 13. The establishment response packetmay notify the approval for initiation of a session. After transmittingthe establishment request packet at step S11, the communication device13 may monitor the receipt of the establishment response packet at stepS13. When the establishment response packet is not received, e.g., NO atstep 13, the communication device 13 may continue to monitor the receiptof the establishment response packet. When the establishment responsepacket is received, e.g., YES at step S13, the session with thecommunication device 12 may be established at step S14.

In order that the communication device 13 may transmit a data packet tothe communication device 12 through the session established at the stepS14, the available bandwidth may be measured in advance. The availablebandwidth may be measured in the communication line directed from thecommunication device 13 to the communication device 12. Thecommunication device 13 may make the transmission bandwidth of the datapacket to be transmitted to the communication device 12 less than theavailable bandwidth, in order to suppress the packet loss and jitter inthe communication. The communication device 13 may determine thetransmission bandwidth of the measurement packets and may perform themeasurement communication. The communication device 13 may accuratelymeasure the available bandwidth through the measurement communicationwithout affecting the communication between the communication devices 11and 12.

The communication device 13 may transmit a request packet to thecommunication device 12 to request the ID of the communication devices11 that have already established the session with the communicationdevice 12. The communication device 12 may return a packet containingthe ID of the communication device 11 to the communication device 13.When the session between the communication devices 11 and 12 is alreadydiscontinued and no other communication device 10 has established asession with the communication device 12, the communication device 12may return a packet containing the ID of the communication device 12 tothe communication device 13. The communication device 13 may receive thepacket transmitted from the communication device 12 and acquire the IDat step S15.

At step S17, The communication device 13 may decide whether thecommunication device 12 has established a session with othercommunication device 10 besides the communication device 13 based on theID acquired at the step S15. The communication device 13 may decidewhether the communication device 12, with which the session has beenestablished at the step S14, has established a session with any of theother communication devices 10. When the session between thecommunication devices 11 and 12 is already established, thecommunication device 13 may acquire the ID of the communication device12 at the step S15. The communication device 13 may decide that none ofthe other communication devices 10 has established a session with thecommunication device 12, e.g., NO at step S17. The communication device13 may designates bmax, as shown in FIG. 2, as the starting bandwidth toperform the measurement communication utilizing the bandwidth of thepredetermined range 37 as the transmission bandwidth at step S21. Theoperation then may proceed to the step S23.

On the other hand, when the session between the communication devices 11and 12 is effectively established, the communication device 13 mayacquire the ID of the communication device 11 at the step S15.Accordingly, the communication device 13 may decide that thecommunication device 12 has established a session with the communicationdevice 11, e.g., YES at step S17. At step S19, the communication device13 then may perform a condition determination procedure, as shown inFIG. 8, to determine the transmission bandwidth of the measurementpackets based on the communication status between the communicationdevices 11 and 12.

Referring to FIG. 8, in the condition determination procedure, thecommunication device 13 may transmit a request packet to thecommunication device 12 to request the following informationrepresenting the communication status between the communication devices11 and 12: First, the available bandwidth in the communication linedirected from the communication device 11 to the communication device12; and second, the transmission bandwidth of the data packet beingtransmitted from the communication device 11 to the communication device12, e.g., occupied bandwidth.

The communication device 12 may return a packet containing the foregoinginformation, to the communication device 13. At step S31, thecommunication device 13 may receive the packet transmitted from thecommunication device 12, and acquire the communication status betweenthe communication devices 11 and 12.

At step S33, the communication device 13 may calculate the surplusbandwidth by subtracting the occupied bandwidth acquired at the step S31from the available bandwidth acquired at the step S31. At step S35, thecommunication device 13 may compare the surplus bandwidth with the lowerlimit bmin of the predetermined range 37, as shown in FIG. 2, to decidewhether the surplus bandwidth is larger than bmin. When the surplusbandwidth is equal to or greater than bmin, e.g., YES at S35, thesurplus bandwidth and the predetermined range 37 may be in arelationship depicted in FIG. 3 or FIG. 4. At step S37, thecommunication device 13 may perform the starting bandwidth determinationprocedure, as shown in FIG. 9, in order to determine the startingbandwidth. After the starting bandwidth is determined in the startingbandwidth determination procedure, the condition determination proceduremay end, and the operation may return to the main procedure, as shown inFIG. 7.

On the other hand, when the surplus bandwidth is less than bmin, e.g.,NO at step S35, the surplus bandwidth and the predetermined range 37 maybe in a relationship as depicted in FIG. 5. At step S39, thecommunication device 13 may perform a bandwidth request procedure, asshown in FIG. 10, to determine the starting bandwidth. After thestarting bandwidth is determined in the bandwidth request procedure, thecondition determination procedure may end, and the operation may returnto the main procedure, as shown in FIG. 7.

Referring FIG. 9, in the starting bandwidth determination procedure, thecommunication device 13 may compare the surplus bandwidth calculated atthe step S33, as shown in FIG. 8, with the upper limit bmax of thepredetermined range 37, as shown in FIG. 2, to decide whether thesurplus bandwidth is equal to or greater than bmax at step S51. When thesurplus bandwidth is equal to or greater than bmax, e.g., YES at stepS51, the surplus bandwidth and the predetermined range 37 may be in arelationship as depicted in FIG. 3. At step S53, the communicationdevice 13 may designate bmax as the starting bandwidth. The startingbandwidth determination procedure then may end, and the operation mayreturn to the condition determination procedure, as shown in FIG. 8. Onthe other hand, when the surplus bandwidth is less than bmax, e.g., NOat step S51, the surplus bandwidth and the predetermined range 37 may bein a relationship as depicted in FIG. 4. At step S55, the communicationdevice 13 may designate the surplus bandwidth as the starting bandwidth.The starting bandwidth determination procedure then may end, and theoperation may return to the condition determination procedure, as shownin FIG. 8.

Referring to FIG. 10, in the bandwidth request procedure, thecommunication device 13 may determine the communication device 11designated by the ID acquired at the step S15, as shown in FIG. 7, asthe communication device that has established a session with thecommunication device 12, and may transmit a request packet to thecommunication device 12 at step S61. The request packet may serve torequest reduction of the transmission bandwidth used for transmitting adata packet from the communication device 11 to the communication device12. Upon receipt of the request packet, the communication device 12 maytransfer the request packet to the communication device 11. When receiptof the request packet from the communication device 12, thecommunication device 11 may reduce the transmission bandwidth of thedata packet being transmitted to the communication device 12, inaccordance with the request.

After the transmission bandwidth of the data packet being transmittedfrom the communication device 11 to the communication device 12 isreduced, the communication device 13 may transmit a request packet tothe communication device 12 to request the reduced transmissionbandwidth. The communication device 12 may return a packet containingthe transmission bandwidth to the communication device 13. At step S63,the communication device 13 may receive the packet transmitted from thecommunication device 12 and may acquire the transmission bandwidthprovided after the reduction of the transmission bandwidth used fortransmitting a data packet from the communication device 11 to thecommunication device 12, as the occupied bandwidth.

At step S65, the communication device 13 may calculate the surplusbandwidth by subtracting the occupied bandwidth acquired at the step S63from the available bandwidth acquired at the step S31 in FIG. 8. Thetransmission bandwidth used for transmitting a data packet from thecommunication device 11 to the communication device 12 may be reduced.Accordingly, the surplus bandwidth calculated at the step S65 may becomegreater than the surplus bandwidth calculated at the step S33 in FIG. 8.At step S67, the communication device 13 may perform the startingbandwidth determination procedure, as shown in FIG. 9, so as todetermine the starting bandwidth based on the calculated surplusbandwidth. The starting bandwidth determination procedure at step S67may be substantially similar to the starting bandwidth determinationprocedure at step S37 in FIG. 8. After the starting bandwidth isdetermined in the starting bandwidth determination procedure, thebandwidth request procedure may end and the operation may return to thecondition determination procedure in FIG. 8.

As shown in FIG. 7, after the starting bandwidth is determined either atthe step S19 or step S21, the communication device 13 may start themeasurement communication using the determined starting bandwidth atstep S23. In the measurement communication, the communication device 13may vary the transmission bandwidth between the starting bandwidth andbmin for transmission of the measurement packets to the communicationdevice 12. When the communication device 12 decides that the availablebandwidth is located on the broader side from the starting bandwidth,the communication device 12 may request the communication device 13 totransmit the measurement packets using a bandwidth on the broader sidefrom the starting bandwidth. When such a request is accepted, thecommunication device 13 may use the bandwidth on the broader side fromthe starting bandwidth as the transmission bandwidth for transmittingthe measurement packets to the communication device 12. Accordingly, thetransmission bandwidths for transmitting the measurement packets to thecommunication device 12 may sequentially be determined.

The transmission bandwidth of the data packet transmitted from thecommunication device 11 to the communication device 12 may increaseduring the measurement communication. In this case, the bandwidth usedin the communication line directed from the communication device 11 tothe communication device 12 and in the communication line directed fromthe communication device 13 to the communication device 12 may exceedthe available bandwidth U. When the available bandwidth U is exceeded,the communication device 12 may suffer greater packet loss and jitterwith respect to the data packet received from the communication device11. Accordingly, the communication device 13 may adjust the transmissionbandwidth of the measurement packets transmitted to the communicationdevice 12. The following procedure may suppress the increase in packetloss and jitter between the communication devices 11 and 12, therebysecuring the reliability of the communication between the communicationdevices 11 and 12.

After the measurement communication with the communication device 12 isstarted at step S23, the communication device 13 may perform a conditionmodification procedure at step S25, as shown in FIG. 11. In thecondition modification procedure, the transmission bandwidth of themeasurement packets may be adjusted in accordance with the communicationstatus between the communication devices 11 and 12. Referring to FIG.11, the communication device 12 may measure the packet loss and jitterat the same time as receiving the data packet transmitted from thecommunication device 11. The communication device 13 may transmit arequest packet to the communication device 12 to request the packet lossor jitter, or both, measured by the communication device 12. Thecommunication device 12 may return a packet containing the measuredpacket loss or jitter, or both, to the communication device 13. Uponreceipt of the packet transmitted from the communication device 12, thecommunication device 13 may acquire the packet loss or jitter at stepS71.

The communication device 13 may decide whether the acquired packet lossor jitter, or both, is equal to or greater than a predeterminedthreshold at step S73. When the acquired packet loss or jitter, or both,is equal to or greater than the predetermined threshold, e.g., YES atstep S73, the bandwidth used in the communication line directed from thecommunication device 11 to the communication device 12 may exceed theavailable bandwidth U. In this case, the transmission bandwidth of themeasurement packets may be reduced to prevent the communication statusfrom degrading. Accordingly, at step S75, the transmission bandwidth ofthe measurement packets transmitted to the communication device 12 maybe designated as the upper limit of the transmission bandwidth of themeasurement packets, when the communication device 13 decides that theacquired packet loss or jitter, or both, is equal to or greater than thepredetermined threshold. Thereafter, the transmission bandwidth may bedetermined so as not to exceed the upper limit set as above, fortransmission of the measurement packets. Thus, the transmissionbandwidth of the measurement packets may be prevented from increasing.The condition modification procedure may end, and the operation mayreturn to the main procedure in FIG. 7.

On the other hand, when the packet loss or jitter, or both, acquired atthe step S71 is less than the predetermined threshold, e.g., NO at stepS73, it may not be necessary to determine the upper limit of thetransmission bandwidth. Accordingly, the condition modificationprocedure may end, and the operation may return to the main procedure inFIG. 7.

The communication device 12 may receive the measurement packets andmeasure the packet loss and jitter. When the available bandwidth isdetermined, the communication device 12 may provide the identifiedavailable bandwidth to the communication device 13. Upon receipt of thenotification of the available bandwidth, the communication device 13 maydecide that the measurement communication has ended, e.g., YES at stepS27. At this stage, the main procedure may end. When the availablebandwidth has not been notified, e.g., NO at step S27, the operation mayreturn to step S25, so that the measurement communication and thecondition modification procedure may continuously be performed.

The communication device 11 may establish a session with thecommunication device 12. In another embodiment, the communication device12 may establish sessions with two or more of the communication device10.

In this case, the communication device 13 may calculate a mean value ofthe available bandwidth of a plurality of communication lines directedto the communication device 12 from two or more communication devices 10that have established sessions with the communication device 12. Thecommunication device 13 may also calculate the total of the transmissionbandwidth of a plurality of data packets being transmitted to thecommunication device 12, as the occupied bandwidth. Thus, thecommunication device 13 may calculate the surplus bandwidth bysubtracting the summed occupied bandwidth from the mean value of theavailable bandwidth.

The communication device 13 may calculate the surplus bandwidth based onthe available bandwidth and the occupied bandwidth acquired from thecommunication device 12. In another embodiment, the communication device12 may calculate the occupied bandwidth. The communication device 13 mayacquire the surplus bandwidth calculated by the communication device 12directly from the communication device 12.

The communication device 13 may transmit the request packet to thecommunication device 12 to acquire the available bandwidth and theoccupied bandwidth. In another embodiment, the communication device 13may transmit the request packet to the communication device 11 toacquire the available bandwidth and the occupied bandwidth from thecommunication device 11.

The communication device 13 may transmit, to the communication device12, the request packet requesting the reduction of the transmissionbandwidth of the data packet being transmitted from the communicationdevice 11 to the communication device 12. The communication device 12then may transfer the request packet to the communication device 11,such that the communication device 11 may reduce the transmissionbandwidth of the data packet. In another embodiment, the communicationdevice 13 may transmit the request packet directly to the communicationdevice 11, such that the communication device 11 may reduce thetransmission bandwidth of the data packet being transmitted to thecommunication device 12.

The communication device 13 may determine the upper limit of thetransmission bandwidth of the measurement packets, when the packet lossand jitter acquired from the communication device 12 are equal to orgreater than a predetermined threshold. In another embodiment, thecommunication device 13 may acquire at least either of the packet lossand the jitter. The communication device 13 may determine the upperlimit of the transmission bandwidth of the measurement packets, when atleast either of the packet loss or the jitter is equal to or greaterthan a predetermined threshold.

According to FIG. 5, the transmission bandwidth of the data packet beingtransmitted from the communication device 11 to the communication device12 may be reduced when the calculated surplus bandwidth is less than thelower limit bmin of the predetermined range 37. In another embodiment,the transmission bandwidth of the data packet being transmitted from thecommunication device 11 to the communication device 12 may be reduced,for example, when the calculated surplus bandwidth is less than apredetermined threshold. Therefore, the transmission bandwidth ofmeasurement data that may be selected for the measurement communicationmay be varied in a wider range. Such an arrangement further assures thatthe communication device 13 may detect the available bandwidthconsistently.

Referring to FIG. 3, bmax may be designated as the starting bandwidth.In another embodiment, any bandwidth between bmin and bmax may bedesignated as the starting bandwidth. Referring to FIG. 4, the surplusbandwidth X may be designated as the starting bandwidth. In anotherembodiment, any bandwidth between bmin and the surplus bandwidth X maybe designated as the starting bandwidth. When the surplus bandwidth Y iscalculated, as shown in FIG. 5, the communication device 13 may requestthe communication device 11 to reduce the transmission bandwidth of thedata packet indicating an extent of reduction of the transmissionbandwidth.

While the invention has been described in connection with variousexemplary structures and illustrative embodiments, it will be understoodby those skilled in the art that other variations and modifications ofthe structures, configurations, and embodiments described above may bemade without departing from the scope of the invention. For example,this application may comprise many possible combinations of the variouselements and features disclosed herein, and the particular elements andfeatures presented in the claims and disclosed above may be combinedwith each other in other ways within the scope of the application, suchthat the application should be recognized as also directed to otherembodiments comprising any other possible combinations. Otherstructures, configurations, and embodiments will be apparent to thoseskilled in the art from a consideration of the specification or practiceof the invention disclosed herein. It is intended that the specificationand the described examples are illustrative with the true scope of theinvention being defined by the following claims.

What is claimed is:
 1. A first communication device comprising: a memorystoring a communication program, a controller configured to access thecommunication program and configured to control the first communicationdevice to execute the steps of: establishing communication between thefirst communication device and a second communication device via a firstcommunication session, wherein the second communication device isdifferent from the first communication device; determining whether asecond communication session between the second communication device anda third communication device is established, wherein the thirdcommunication device is different from the first and secondcommunication devices; acquiring a communication parameter of the secondcommunication session from the second communication device when thecontroller determines that the second communication session isestablished; measuring an available bandwidth in the first communicationsession based on the acquired communication parameter of the secondcommunication session; and communicating with the second communicationdevice using the first communication session after setting thebandwidth, wherein the step of acquiring the communication parametercomprises the step of acquiring a surplus bandwidth of the secondcommunication device, the surplus bandwidth being defined by subtractinga bandwidth of the second communication session from an availablebandwidth of the second communication device, and the bandwidth of thesecond communication session is a bandwidth occupied by a communicationbetween the second communication device and the third communicationdevice, wherein the step of measuring the available bandwidth of thefirst communication session comprises the steps of: determining whetheran upper limit of a predetermined range is equal to or less than thesurplus bandwidth; setting a starting bandwidth of the measurement ofthe available bandwidth in the first communication session to be: theupper limit of the predetermined range when the upper limit of thepredetermined range is equal to or less than the surplus bandwidth; andthe surplus bandwidth when the upper limit of the predetermined range ismore than the surplus bandwidth; and transmitting a measure data formeasuring the available bandwidth of the first communication session tothe second communication device using a transmission bandwidth, which isgradually varied within a range starting from the starting bandwidth. 2.The first communication device according to claim 1, wherein thecommunication parameter of the second communication session comprises abandwidth of the second communication session, wherein the step ofdetermining the starting bandwidth comprises the step of determining asurplus bandwidth by subtracting the bandwidth of the secondcommunication session from an available bandwidth of the firstcommunication device, wherein the bandwidth of second communicationsession is a bandwidth occupied by a communication between the firstcommunication device and the second communication device, wherein thestarting bandwidth is equal to or less than the surplus bandwidth. 3.The first communication device according to claim 1, wherein the step ofdetermining the starting bandwidth comprises the step of determiningwhether an upper limit of the predetermined range is equal to or lessthan the surplus bandwidth; wherein the step of setting the bandwidth ofthe first communication session comprises the step of transmitting themeasure data to the first communication device using the transmissionbandwidth, which is gradually varied within the predetermined rangestarting from the upper limit of the predetermined range when the upperlimit of the predetermined range is equal to or less than the surplusbandwidth.
 4. The first communication device according to claim 1,wherein the step of determining the starting bandwidth comprises thestep of determining whether an upper limit of the predetermined range isgreater than the surplus bandwidth; wherein the step of setting thebandwidth of the first communication session comprises the step oftransmitting the measure data to the first communication device usingthe transmission bandwidth, which is gradually varied starting from thesurplus bandwidth when the upper limit of the predetermined range ismore than the surplus bandwidth.
 5. The first communication deviceaccording to claim 3, wherein when the computer-readable instructionsare executed by the controller, the controller is further configured toexecute the steps of: determining whether the surplus bandwidth is lessthan a lower limit of the predetermined range; and reducing a volume ofcommunication between the first communication device and the secondcommunication device when the surplus bandwidth is less than the lowerlimit of the predetermined range, such that the surplus bandwidth iswithin the predetermined range.
 6. The first communication deviceaccording to claim 1, wherein when the computer-readable instructionsare executed by the controller, the controller is further configured toexecute the steps of: acquiring a number of data lost or jitter in thesecond communication session; decreasing an upper limit of thepredetermined range when the number of data lost or jitter in the secondcommunication session is equal to or greater than a predetermined value.7. A method for implementing communication at a first communicationdevice, the method comprising steps of: establishing communicationbetween the first communication device and a second communication devicevia a first communication session, wherein the second communicationdevice is different from the first communication device; determiningwhether a second communication session between the second communicationdevice and a third communication device is established, wherein thethird communication device is different from the first and secondcommunication devices; acquiring a communication parameter of the secondcommunication session from the second communication device when thesecond communication session is established; measuring an availablebandwidth in the first communication session based on the acquiredcommunication parameter of the second communication session; andcommunicating with the second communication device using the firstcommunication session after setting the bandwidth, wherein the step ofacquiring the communication parameter comprises the step of acquiring asurplus bandwidth of the second communication device, the surplusbandwidth being defined by subtracting a bandwidth of the secondcommunication session from an available bandwidth of the secondcommunication device, and the bandwidth of the second communicationsession is a bandwidth occupied by a communication between the secondcommunication device and the third communication device, wherein thestep of measuring the available bandwidth of the first communicationsession comprises the steps of: determining whether an upper limit of apredetermined range is equal to or less than the surplus bandwidth;setting a starting bandwidth of the measurement of the availablebandwidth in the first communication session to be: the upper limit ofthe predetermined range when the upper limit of the predetermined rangeis equal to or less than the surplus bandwidth; and the surplusbandwidth when the upper limit of the predetermined range is more thanthe surplus bandwidth; and transmitting a measure data for measuring theavailable bandwidth of the first communication session to the secondcommunication device using a transmission bandwidth, which is graduallyvaried within a range starting from the starting bandwidth.
 8. Anon-transitory computer readable storage medium storing computerreadable instructions that, when executed, cause a first communicationdevice to execute steps of: establishing communication between the firstcommunication device and a second communication device via a firstcommunication session, wherein the second communication device isdifferent from the first communication device; determining whether asecond communication session between the second communication device anda third communication device is established, wherein the thirdcommunication device is different from the first and secondcommunication devices; acquiring a communication parameter of the secondcommunication session from the second communication device when thesecond communication session is established; measuring an availablebandwidth in the first communication session based on the acquiredcommunication parameter of the second communication session; andcommunicating with the second communication device using the firstcommunication session after setting the bandwidth, wherein the step ofacquiring the communication parameter comprises the step of acquiring asurplus bandwidth of the second communication device, the surplusbandwidth being defined by subtracting a bandwidth of the secondcommunication session from an available bandwidth of the secondcommunication device, and the bandwidth of the second communicationsession is a bandwidth occupied by a communication between the secondcommunication device and the third communication device, wherein thestep of measuring the available bandwidth of the first communicationsession comprises the steps of: determining whether an upper limit of apredetermined range is equal to or less than the surplus bandwidth;setting a starting bandwidth of the measurement of the availablebandwidth in the first communication session to be: the upper limit ofthe predetermined range when the upper limit of the predetermined rangeis equal to or less than the surplus bandwidth; and the surplusbandwidth when the upper limit of the predetermined range is more thanthe surplus bandwidth; and transmitting a measure data for measuring theavailable bandwidth of the first communication session to the secondcommunication device using a transmission bandwidth, which is graduallyvaried within a range starting from the starting bandwidth.